package org.lonetree.tc.webapp.actions;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.lonetree.tc.core.Course;
import org.lonetree.tc.core.Course.CourseId;
import org.lonetree.tc.core.dao.CourseDAO;
import org.lonetree.tc.core.dao.DAOFactory;
import org.lonetree.tc.webapp.forms.CourseForm;

public class RemoveCourse extends AdminAction {

	@Override
	protected ActionForward executeAdmin(ActionMapping mapping,
			ActionForm form, HttpServletRequest request,
			HttpServletResponse response) throws Exception {

		try {
			//cidstring will be 8 characters...CPSC 111
			//how to convert cidstring to cid?
			CourseId cid = new CourseId(request.getParameter("cidstring"));
			DAOFactory factory = DAOFactory.getDAOFactory(DAOFactory.FactoryImplementation.DB_DAO_FACTORY);
			
			CourseDAO cdao = factory.getCourseDAO();
			cdao.removeCourse(cid);
			
			request.setAttribute("course.remove.message", "Course successfully removed");
			
			return mapping.findForward("success");
		} catch (Exception e) {
			request.setAttribute("course.remove.message", "Failed to remove course");
			
			return mapping.findForward("failure");
		}
	}
}